﻿// 4708. 立方体.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
/*
https://www.acwing.com/problem/content/4711/

给定一个 k×n×m
 的长方体，即它共有 k
 层，每层都由 n×m
 个 1×1×1
 的小立方体组成。

层从高到低依次编号为 1∼k
，每一层的行从上到下依次编号为 1∼n
，每一层的列从左到右依次编号为 1∼m
。

第 i
 层第 j
 行第 q
 列的小立方体表示为 (i,j,q)
。

每个小立方体，要么是空的（用 . 表示），要么包含障碍物（用 # 表示）。

初始时，你位于 (1,x,y)
，保证该立方体是空的。

当你位于一个空立方体时，你可以沿前后上下左右六个方向自由移动至相邻立方体中，但是不能移动至长方体外，也不能移动至有障碍物的立方体中。

请你计算，你最多可以到达多少个空立方体？

注意，计数时初始立方体也要计算在内，同一立方体可以进入多次。

输入格式
第一行包含三个整数 k,n,m
。

随后包含 k
 个 n
 行 m
 列的字符矩阵，其中第 i
 个字符矩阵中的第 j
 行第 q
 列的字符表示立方体 (i,j,q)
 的具体状态，如果为 . 则表示该立方体是空的，如果为 # 则表示该立方体包含障碍物。

每个字符矩阵的上方和下方都有且仅有一个空行，用来将矩阵隔开（具体可参照样例）。

最后一行包含两个整数 x,y
，你的初始位置即为 (1,x,y)
。

输出格式
一个整数，表示最多可以到达的空立方体数量。

数据范围
前 5
 个测试点满足 1≤k,n,m≤3
。
所有测试点满足 1≤k,n,m≤10
，1≤x≤n
，1≤y≤m
。

输入样例1：
1 1 1

.

1 1
输出样例1：
1
输入样例2：
2 1 1

.

#

1 1
输出样例2：
1
输入样例3：
2 2 2

.#
##

..
..

1 1
输出样例3：
5
输入样例4：
3 2 2

#.
##

#.
.#

..
..

1 2
输出样例4：
7
输入样例5：
3 3 3

.#.
###
##.

.##
###
##.

...
...
...

1 1
输出样例5：
13
*/
#include <iostream>

int main()
{
    std::cout << "Hello World!\n";
}
 